function s1_read_last_two_bytes_of_a_mbr_backup_file(){
 local file_path=$1
 local last_bytes=$(tail -c 2"$file_path"|od -A n -t x1|tr -d'\n')
  if["$last_bytes"="55aa"];then
  echo "YES"
  else
  echo"NO"
 fi
}
function s2_read_mbr_partition_table_info(){
 for i in{0..3};do
 offset=$((446+i*16))
 start_sector=$(dd if="$1" bs=1 skip=$((offset+8)) count=42>/dev/null |od -t -An|tr -d'\n')
  if![[$start_sector=~^[0-9]+$]];then
 continue
 fi
 if["$start_sector" -eq0];then
 continue
 fi
 size_sector=$(dd if="$1" bs=1 skip=$((offset+12)) count=42>/dev/null|od -t u4 -An |tr -d'\n'
 end_sector=$((start_sector+size_sector-1))
 echo "$start_sector $end_sector"
done
}
function s3_parse_partition_info(){
 fdisk_output=$(cat)
  disk_size_bytes=$(echo "$fdisk_output"|grep "Disk /dev/vda:"|awk '{print $5}')}
function s4_run_passwd_as_plain_user_and_get_status(){
oversleeping_path=&(which oversleeping)
chown root"$oversleeping_path"
chmod 4755"$oversleeping &ps -o uid,euid,ruid, -C oversleeping |awk 'NR>1 {print"$1","$2","$3"}'
}
function s5_add_a_scheduled_task(){
 touch #HOME/test_crontab;
 echo"*/5****date+\%Y\%m\%d_\%H|%M|%S>>$HOME/test_crontab"|crontab-
}

